package com.easyapi.common.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 状态码反馈
 *
 * @author javadadi
 */
@Getter
@AllArgsConstructor
public enum StatusCode {
    /**
     * 用户中心相关
     */
    NO_SUCH_USER(1001, "用户未注册"),
    EXISTING_USER(1002, "用户已经存在"),
    NO_LOGIN(1003, "用户未登录"),
    NO_AUTH_ERROR(1004, "无权限"),
    FORBIDDEN_ERROR(1005, "禁止访问"),
    PARAMS_ERROR(1006, "参数错误"),
    FORMAT_ERROR(1007, "格式错误"),
    CAPTCHA_ERROR(1008, "验证码错误"),
    PASSWORD_ERROR(1009, "密码错误"),
    NO_SUCH_ROLE(1010, "没有该角色"),
    NO_SUCH_PERMISSION(1011, "没有该权限"),
    NO_SUCH_PERMISSION_MESSAGE(1012, "没有该授权信息"),
    ROLE_IS_REFERENCED(1013,"角色正在被引用"),
    /**
     * API相关
     */
    NO_SUCH_PROJECT(2001, "没有该项目"),
    NO_SUCH_DATASOURCE(2002, "没有该数据源"),
    LINK_DATASOURCE_FALSE(2003, "连接数据源失败"),
    DISABLE_DATASOURCE(2004, "数据源已禁用"),
    REPEAT_PROJECT_NAME(2005, "项目名称重复"),
    USELESS_DATASOURCE(2006, "数据源不可用"),
    NO_SUCH_DATASOURCE_REFERENCE(2007, "没有引用该数据源"),
    API_ALL_READY_EXIST(2008, "接口已经存在"),
    NO_SUCH_DATABASE(2009, "没有改数据库"),
    NO_SUCH_TABLE(2010, "没有该数据表"),
    NO_SUCH_FIELD(2011, "没有该字段"),
    OPERATOR_ILLEGALITY(2012, "操作符不合法"),
    NO_OUT_API(2013, "没有输出的api"),
    SQL_PARSER_ERROR(2014, "sql解析错误"),
    NO_SUCH_API(2015, "没有该api"),
    REPEAT_PERMISSION(2016,"重复授权"),
    VISITOR_CANNOT_DEL(2017,"默认角色不能取消"),
    DATASOURCE_IS_USING(2018,"数据源正在使用中"),
    /**
     * 系统相关
     */
    OPERATION_ERROR(5001, "操作失败"),
    SYSTEM_ERROR(5002, "系统错误"),

    /**
     * 成果
     */
    SUCCESS(200, "success");
    /**
     * 状态码
     */
    private int code;
    /**
     * 错误信息
     */
    private String message;
}
